package com.hyfrogx.modules.zoom.entity;

import com.baomidou.mybatisplus.annotation.FieldStrategy;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;

import java.io.Serializable;
import java.util.Date;
import java.util.List;

/**
 * @author ：Li9527
 * @date ：Created in 2019-03-27 9:27
 * @description：会议室表model
 * @modified By：
 * @version: 1.0
 */
@Data
@TableName("hy_zoom_meeting")
public class HyZoomMeeting implements Serializable {
    private static final long serialVersionUID = -4331631635528681836L;
    @TableId
    private Integer id;

    /**
     * Zoom返回的会议室id
     */
    private Integer zoomid;

    /**
     * 自定义房间号
     */
    @TableField(exist = false)
    private String zoomnum;

    /**
     * 会议室创建者Zoom上的userId
     */
    private String hostid;

    /**
     * 三眼蛙业务预约者uid
     */
    @TableField(strategy = FieldStrategy.IGNORED)
    private Long reserveUid;

    /**
     * 本地会议室命名
     */
    private String localname;

    /**
     * 最大可参会人数(多少方)
     */
    private Integer meetingcapacity;

    /**
     * 会议室密码,可设可不设
     */
    private String password;

    /**
     * 开启Url
     */
    private String starturl;

    /**
     * 加入Url
     */
    private String joinurl;

    /**
     * 当前使用者uid,公共会议室在有使用者归属时/专属会议室不会有值/主持人
     */
    private Long currentuid;

    /**
     * 会议室创建时间
     */
    private Date createat;

    /**
     * 会议室启用时间
     */
    private Date updateat;

    /**
     * 会议室到期时间
     */
    private Date endat;

    /**
     * 会议结束时间
     */
    @TableField(exist = false)
    private String end;

    /**
     * 剩余时间
     */
    private Integer laveday;

    /**
     * 是否有密码/1有0没有 默认没有
     */
    private Integer ishavepsd;

    /**
     * 是否专属会议室  0 公共/1 VIP专属 /2 体验
     */
    private Integer isvipzoom;

    /**
     * 专属会议室所属 uid
     */
    private Long uid;

    /**
     * 当前会议状态: 0空闲1使用中
     */
    private Integer meetstatus;

    /**
     * web端展示状态 0隐藏1展示<针对公共房间>让web可控制客户端房间显示及隐藏
     */
    private Integer showstatus;

    /**
     * 真实是否可用状态 0不可用1可用 --无剩余时间了,置0
     */
    private Integer truestatus;

    /**
     * 会议室配图
     */
    private String img;

    /**
     * zoom账号token
     */
    private String token;

    /**
     * 用户自定义会议id,当前毫秒时间戳
     */
    private String hymeetid;

    /**
     * 是否收费  -1是0否
     */
    private Integer ischarge;

    /**
     * 收费金额
     */
    private Integer price;

    /**
     * 会议持续时长
     */
    private Integer time;

    /**
     * 专属会议室名称
     */
    private String zoomname;

    /**
     * 专属会议室进入标记
     */
    private String zoomtab;

    /**
     * 备注信息
     */
    private String remark;

    /**
     * zak,安卓端开会所需
     */
    @TableField(exist = false)
    private String zak;

    /**
     * 附加账号列表
     */
    @TableField(exist = false)
    private List<String> list;


    /**
     * 分享业务需求字段.主持人
     */
    @TableField(exist = false)
    private String hostuser;

    /**
     * 会议附属者uid
     */
    @TableField(exist = false)
    private long ouid;

    /**
     * 是否附属1是0否
     */
    @TableField(exist = false)
    private Integer isAffiliated;

    /**
     * 是否到期1是0否
     */
    @TableField(exist = false)
    private Integer isExpire;

    /**
     * 手机号
     */
    @TableField(exist = false)
    private String phone;

}
